package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 公益活动对象 credit_charity_activity
 * 
 * @author ruoyi
 * @date 2024-01-26
 */
public class CreditCharityActivity extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 活动ID */
    private Long activityId;

    /** 活动标题 */
    @Excel(name = "活动标题")
    private String activityTitle;

    /** 活动分类 */
    @Excel(name = "活动分类")
    private String activityCategory;

    /** 活动日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "活动日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date activityDate;

    /** 活动地点 */
    @Excel(name = "活动地点")
    private String activityLocation;

    /** 活动描述 */
    @Excel(name = "活动描述")
    private String activityDescription;

    /** 最大参与人数 */
    @Excel(name = "最大参与人数")
    private Integer maxParticipants;

    /** 当前参与人数 */
    @Excel(name = "当前参与人数")
    private Integer currentParticipants;

    /** 积分奖励 */
    @Excel(name = "积分奖励")
    private Integer pointsReward;

    /** 活动时长 */
    @Excel(name = "活动时长")
    private String duration;

    /** 组织方 */
    @Excel(name = "组织方")
    private String organizer;

    /** 参与要求 */
    @Excel(name = "参与要求")
    private String requirements;

    /** 状态 */
    @Excel(name = "状态", readConverterExp = "recruiting=报名中,ongoing=进行中,completed=已结束")
    private String status;

    /** 是否可用 */
    @Excel(name = "是否可用", readConverterExp = "0=停用,1=正常")
    private String isAvailable;

    public void setActivityId(Long activityId) 
    {
        this.activityId = activityId;
    }

    public Long getActivityId() 
    {
        return activityId;
    }
    public void setActivityTitle(String activityTitle) 
    {
        this.activityTitle = activityTitle;
    }

    public String getActivityTitle() 
    {
        return activityTitle;
    }
    public void setActivityCategory(String activityCategory) 
    {
        this.activityCategory = activityCategory;
    }

    public String getActivityCategory() 
    {
        return activityCategory;
    }
    public void setActivityDate(Date activityDate) 
    {
        this.activityDate = activityDate;
    }

    public Date getActivityDate() 
    {
        return activityDate;
    }
    public void setActivityLocation(String activityLocation) 
    {
        this.activityLocation = activityLocation;
    }

    public String getActivityLocation() 
    {
        return activityLocation;
    }
    public void setActivityDescription(String activityDescription) 
    {
        this.activityDescription = activityDescription;
    }

    public String getActivityDescription() 
    {
        return activityDescription;
    }
    public void setMaxParticipants(Integer maxParticipants) 
    {
        this.maxParticipants = maxParticipants;
    }

    public Integer getMaxParticipants() 
    {
        return maxParticipants;
    }
    public void setCurrentParticipants(Integer currentParticipants) 
    {
        this.currentParticipants = currentParticipants;
    }

    public Integer getCurrentParticipants() 
    {
        return currentParticipants;
    }
    public void setPointsReward(Integer pointsReward) 
    {
        this.pointsReward = pointsReward;
    }

    public Integer getPointsReward() 
    {
        return pointsReward;
    }
    public void setDuration(String duration) 
    {
        this.duration = duration;
    }

    public String getDuration()
    {
        return duration;
    }
    public void setOrganizer(String organizer) 
    {
        this.organizer = organizer;
    }

    public String getOrganizer() 
    {
        return organizer;
    }
    public void setRequirements(String requirements) 
    {
        this.requirements = requirements;
    }

    public String getRequirements() 
    {
        return requirements;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setIsAvailable(String isAvailable) 
    {
        this.isAvailable = isAvailable;
    }

    public String getIsAvailable() 
    {
        return isAvailable;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("activityId", getActivityId())
            .append("activityTitle", getActivityTitle())
            .append("activityCategory", getActivityCategory())
            .append("activityDate", getActivityDate())
            .append("activityLocation", getActivityLocation())
            .append("activityDescription", getActivityDescription())
            .append("maxParticipants", getMaxParticipants())
            .append("currentParticipants", getCurrentParticipants())
            .append("pointsReward", getPointsReward())
            .append("duration", getDuration())
            .append("organizer", getOrganizer())
            .append("requirements", getRequirements())
            .append("status", getStatus())
            .append("isAvailable", getIsAvailable())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
} 